%macro similitud_definitiva (data= , var= , id=ESTACION, alfa=0.4, beta=0.2 , tipotendencia=regresion, 
							tiempo=tiempo, 	ndias_coef=365, periodo='year',regresivo=4, mediamov=4,
							method=ml, categoria=numerica,	tiposimilitud=normal, IDENT='EST',
							landas=1) ;

%if &tipotendencia=regresion %then %do;
			%SIMILPENDIENTES (data=&data, id=&id , var=&var,  tiempo=&tiempo, periodo=&periodo); 
         %end;
%if &tipotendencia=arima %then %do; 
	%similTENDENCIAS (data=&data, id=&id, var=&var, tiempo=&tiempo, NDIAS_COEF=&ndias_coef, 
						regresivo=&regresivo, mediamov=&mediamov, method=&method); 
	 %end; 
%if &tipotendencia=autoregresion %then %do; 
		%simil_tend_aut	(data=&data, id=&id, var=&var , tiempo=&tiempo, 
					ndias_coef=&ndias_coef, nlag=&regresivo, categoria=&categoria);
			%end;
%if &tiposimilitud=normal %then %do; 
		data simil_tendencia; 
				set simil_norm_pend; run;
		%end; 
%if &tiposimilitud=promedio %then %do; 
		data simil_tendencia; 
				set simil_pro_pend; run;
		%end; 
%if &tiposimilitud=chi %then %do; 
		data simil_tendencia; 
				set simil_chi_pend; run;
		%end; 



  %PREPARADIST (DATA=&DATA, ID=&ID , VAR=&VAR ,
						MATCOMPONENTES=SALIDA2, NCOMPOS=NCOMPOS, fijados=0);
	
    %MEDIA_VAR_N (DATA=&DATA, VAR=&VAR, ID=&ID, 
	VECMEDIAS=VECTORMEDIAS, NVALIDOS=N_VALIDOS, COVAR=COVARIANZAS);


%DISTsinghal (data1=SALIDA2, data2=salida2, id1=&ID, id2=&id, var=&var,
			IDENT1=&IDENT , IDENT2=&IDENT); 

%distmahala (DATAMEDIAS1=VECTORMEDIAS, DATACOVAR1=COVARIANZAS, DATAN1=n_VALIDOS,
			DATAMEDIAS2=VECTORMEDIAS, DATACOVAR2=COVARIANZAS, DATAN2=n_VALIDOS,
			ID1=&ID , ID2=&ID, IDENT1=&ident,IDENT2=&ident, VAR=&VAR) ;

%IF &CATEGORIA=NUMERICA %THEN %DO; 
	    DATA SIMIL_TENDENCIA2; SET SIMIL_TENDENCIA; DROP &ID;RUN;
			%END; 	
%ELSE %DO; 
		DATA SIMIL_TENDENCIA2;SET SIMIL_TENDENCIA;RUN; 
		%END;
%if &landas=1 %then %do; 
	data mh; set simil_conlanda;run;
	%end; 

%else %do; 
	data mh; set simil_comp; run;
		%end; 

  /**COMBINAR LAS SIMILITUDES ****/
PROC IML; 
  	  USE SIMIL_MAH; 
	  READ ALL var {filas} into filas; 
	  READ ALL VAR _NUM_  INTO MAH; 
  
	

		USE mh; 
	  	READ ALL VAR _NUM_ INTO COMP; 

		USE SIMIL_TENDENCIA2; 
		READ ALL INTO TENDENCIA; 
		

	  COM=&ALFA*(MAH)+ &BETA*COMP + (1-&ALFA-&BETA)*TENDENCIA; 

	FILAS=T(filas);

create SIMIL_COMBINADA from com [ROWNAME=FILAS COLNAME=FILAS];
append from com [ROWNAME=FILAS]; 
close  SIMIL_combinada;
quit; 
TITLE 'SIMILITUD BASADA EN DATOS COMBINADOS: ALFA=&ALFA BETA=&BETA ';
proc print data=SIMIL_combinada;run;
TITLE;

PROC DATASETS library=work ; 
   DELETE SIMIL_TENDENCIA2 simil_tendencia;RUN;


/***************************SOLUCIONES*******************/


%MEND SIMILITUD_DEFINITIVA;
